package org.jeecg.modules.zhouAdmin.admin.fabeicCenter.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.zhouAdmin.admin.fabeicCenter.pojo.FabricEntity;
import org.jeecg.modules.zhouAdmin.admin.fabeicCenter.pojo.FabricGroup;
import org.springframework.stereotype.Repository;

/**
 * 面料中心Mapper
 *
 * @author zxl
 * @since 20201027
 */
@Mapper
@Repository
public interface FabricCenterMapper {
    /**
     * 获取面料系列列表（面料组列表）
     *
     * @param page 分页器
     * @return
     */
    IPage<FabricGroup> getGroupList(@Param("page") Page<FabricGroup> page, @Param("name") String name, @Param("price") String price, @Param("status") String status, @Param("code") String code);

    /**
     * 查询面料组下的面料列表
     *
     * @param page       分页器
     * @param groupID    面料组ID
     * @param fabricCode 面料编码
     * @param gysCode    供应商编号(名称啊)
     * @param status     面料状态
     * @return 面料集合
     */
    IPage<FabricEntity> getFabricList(@Param("page") Page<FabricEntity> page, @Param("groupID") String groupID, @Param("fabricCode") String fabricCode, @Param("gysCode") String gysCode, @Param("status") String status);

    /**
     * 获取主推面料列表
     *
     * @param page       分页器
     * @param fabricCode 面料编号
     * @param gysCode    供应商编号
     * @param status     状态
     */
    IPage<FabricEntity> getFirstFabricList(@Param("page") Page<FabricEntity> page, @Param("fabricCode") String fabricCode, @Param("gysCode") String gysCode, @Param("status") String status);

    /**
     * 总后台获取面料详情
     *
     * @param fabricID 面料ID
     */
    FabricEntity getFabricDetail(@Param("fabricID") String fabricID);

    /**
     * 面料组下架或删除，名下的面料也下架或删除
     *
     * @param groupID 面料组ID
     * @param status  状态
     */
    int getOutFabric(@Param("groupID") String groupID, @Param("status") Integer status);
}
